package top.kaoshanji.p3ch21b;

import java.util.ArrayList;

/**
 * 代码清单-p3ch21b-249页a：树枝实现类
 * @author kaoshanji
 * ^_^
 * create time 2025/3/26 9:45
 */
public class Branch implements IBranch {

    // 领导的名称
    private String name = "";

    // 领导的职位
    private String position = "";

    // 领导的薪水
    private int salary = 0;

    // 领导下边有哪些下级领导和小兵
    private ArrayList<ICorp> subordinateList = new ArrayList();

    // 通过构造函数传递领导的信息
    public Branch(String name, String position, int salary) {
        this.name = name;
        this.position = position;
        this.salary = salary;
    }

    // 增加一个下属，可能是小头目，也可能是个小兵
    @Override
    public void addSubordinate(ICorp corp) {
        this.subordinateList.add(corp);
    }

    // 我有哪些下属
    @Override
    public ArrayList<ICorp> getSubordinate() {
        return this.subordinateList;
    }

    // 领导也是人，他也有信息
    @Override
    public String getInfo() {
        return "名称： " + this.name + "\t 职位： " + this.position + "\t 薪水： " + this.salary;
    }
}
